{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# EDA on Titanic Dataset\n",
    ">Divyanshu"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "import seaborn as sns"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "df = pd.read_csv('https://raw.githubusercontent.com/krishnaik06/EDA1/master/titanic_train.csv')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>PassengerId</th>\n",
       "      <th>Survived</th>\n",
       "      <th>Pclass</th>\n",
       "      <th>Name</th>\n",
       "      <th>Sex</th>\n",
       "      <th>Age</th>\n",
       "      <th>SibSp</th>\n",
       "      <th>Parch</th>\n",
       "      <th>Ticket</th>\n",
       "      <th>Fare</th>\n",
       "      <th>Cabin</th>\n",
       "      <th>Embarked</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>3</td>\n",
       "      <td>Braund, Mr. Owen Harris</td>\n",
       "      <td>male</td>\n",
       "      <td>22.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>A/5 21171</td>\n",
       "      <td>7.2500</td>\n",
       "      <td>NaN</td>\n",
       "      <td>S</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>Cumings, Mrs. John Bradley (Florence Briggs Th...</td>\n",
       "      <td>female</td>\n",
       "      <td>38.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>PC 17599</td>\n",
       "      <td>71.2833</td>\n",
       "      <td>C85</td>\n",
       "      <td>C</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>Heikkinen, Miss. Laina</td>\n",
       "      <td>female</td>\n",
       "      <td>26.0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>STON/O2. 3101282</td>\n",
       "      <td>7.9250</td>\n",
       "      <td>NaN</td>\n",
       "      <td>S</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>Futrelle, Mrs. Jacques Heath (Lily May Peel)</td>\n",
       "      <td>female</td>\n",
       "      <td>35.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>113803</td>\n",
       "      <td>53.1000</td>\n",
       "      <td>C123</td>\n",
       "      <td>S</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>0</td>\n",
       "      <td>3</td>\n",
       "      <td>Allen, Mr. William Henry</td>\n",
       "      <td>male</td>\n",
       "      <td>35.0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>373450</td>\n",
       "      <td>8.0500</td>\n",
       "      <td>NaN</td>\n",
       "      <td>S</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   PassengerId  Survived  Pclass  \\\n",
       "0            1         0       3   \n",
       "1            2         1       1   \n",
       "2            3         1       3   \n",
       "3            4         1       1   \n",
       "4            5         0       3   \n",
       "\n",
       "                                                Name     Sex   Age  SibSp  \\\n",
       "0                            Braund, Mr. Owen Harris    male  22.0      1   \n",
       "1  Cumings, Mrs. John Bradley (Florence Briggs Th...  female  38.0      1   \n",
       "2                             Heikkinen, Miss. Laina  female  26.0      0   \n",
       "3       Futrelle, Mrs. Jacques Heath (Lily May Peel)  female  35.0      1   \n",
       "4                           Allen, Mr. William Henry    male  35.0      0   \n",
       "\n",
       "   Parch            Ticket     Fare Cabin Embarked  \n",
       "0      0         A/5 21171   7.2500   NaN        S  \n",
       "1      0          PC 17599  71.2833   C85        C  \n",
       "2      0  STON/O2. 3101282   7.9250   NaN        S  \n",
       "3      0            113803  53.1000  C123        S  \n",
       "4      0            373450   8.0500   NaN        S  "
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x211c2992190>"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# sns.heatmap(df.isnull())\n",
    "sns.heatmap(df.isnull(),yticklabels=False)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Observations and Ideas - \n",
    "\n",
    "1. Age is only slightly empty. So, we can impute/interpolate it. \n",
    "2. Cabin is very much empty. We'll probably remove it, or turn it to a Cabin Filled(Yes/No) kind of column."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    " ## Now that we've confirmed the presence of NaN values, we'll visualize and apply statistics to fill these NaN values."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x211c28edf40>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.set_style('whitegrid')\n",
    "sns.countplot(df['Survived'])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Observations- More than 550 people didn't survive. 350 survived"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "How many males and Females survived? "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x211c30bc580>"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.countplot(x='Survived',hue='Sex',data=df)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Out of the people who didn't Survive. Majority were males.\n",
    "Out of the people who survived, majority were females."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    " **What was the scene with survival and passenger class?**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x211c2d46190>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.countplot(x='Survived',hue='Pclass',data=df)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The Death rate for people from Class 1 (Premium) was v-low and for Cheapest class, class 3 was too high.\n",
    "\n",
    "Note- The PClass is an --- ORDINAL DATA Variable"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>PassengerId</th>\n",
       "      <th>Survived</th>\n",
       "      <th>Pclass</th>\n",
       "      <th>Name</th>\n",
       "      <th>Sex</th>\n",
       "      <th>Age</th>\n",
       "      <th>SibSp</th>\n",
       "      <th>Parch</th>\n",
       "      <th>Ticket</th>\n",
       "      <th>Fare</th>\n",
       "      <th>Cabin</th>\n",
       "      <th>Embarked</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>3</td>\n",
       "      <td>Braund, Mr. Owen Harris</td>\n",
       "      <td>male</td>\n",
       "      <td>22.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>A/5 21171</td>\n",
       "      <td>7.2500</td>\n",
       "      <td>NaN</td>\n",
       "      <td>S</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>Cumings, Mrs. John Bradley (Florence Briggs Th...</td>\n",
       "      <td>female</td>\n",
       "      <td>38.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>PC 17599</td>\n",
       "      <td>71.2833</td>\n",
       "      <td>C85</td>\n",
       "      <td>C</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   PassengerId  Survived  Pclass  \\\n",
       "0            1         0       3   \n",
       "1            2         1       1   \n",
       "\n",
       "                                                Name     Sex   Age  SibSp  \\\n",
       "0                            Braund, Mr. Owen Harris    male  22.0      1   \n",
       "1  Cumings, Mrs. John Bradley (Florence Briggs Th...  female  38.0      1   \n",
       "\n",
       "   Parch     Ticket     Fare Cabin Embarked  \n",
       "0      0  A/5 21171   7.2500   NaN        S  \n",
       "1      0   PC 17599  71.2833   C85        C  "
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head(2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Remember- Age and Cabin are Empty**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x211c32ae070>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.distplot(df['Age'].dropna())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x211c38228e0>"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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P9++cOGCa3J1dnba3/zmNz93nxuynTp1yn7qqafsrq4uu7W11X7llVdckeu/bdmyxT548KArch05csReu3atbdu2ffz4cfvpp5+Oa667ZveL2y5BkJ2drd27d/fcrq+vV0FBgSSpsLBQJ0+eTEiuRx55RM8880zP7eTkZFdk+/rXv66tW7dKki5fvqzMzExX5JKkyspKLVu2TF/4whckued3+cEHH6ijo0MrV67UihUrdPbsWVdkO378uPLy8rRmzRqtWrVKc+fOdUWuW/7+97/rwoULWrp0qStyjR8/Xl1dXeru7lZra6u8Xm9cc901u19aW1uVnp7eczs5OVnhcLjPM1bjqaioSA0NDT23bduWx3PzWg5paWlqaWlJSK60tJsXCWptbdXatWtVWlqqyspKV2Tzer0qKyvTkSNH9Morr+idd95JeK7Dhw9r9OjRmj17tvbt2yfJPb/LoUOH6rvf/a4WL16sf/7zn3ryySddka25uVmXL1/Wnj171NDQoNWrV7si1y179+7VmjVrJLnjd5mamqrGxkYtWLBAzc3N2rNnj06fPh23XHdNqUd7CYLB9t/7w9ra2pSRkZGwLIFAQGvWrFFxcbEee+wx7dy50zXZKisr9dxzz2nJkiUKBoMJz/XGG2/I4/Hovffek9/vV1lZma5f/88FnhL5fI0fP14PPPCAPB6Pxo8fr5EjR6q+vj7h2UaOHKmcnBylpKQoJydHPp9PTU1NCc8lSZ999pk++ugjzZgxQ5I7/l3u379fs2bN0rPPPqtAIKDHH39clmXFLddds/vF7ZcgmDRpkurq6iRJtbW1mjZtWkJyXL16VStXrtT69eu1aNEi12T73e9+p71790qShg0bJo/Ho8mTJyc814EDB1RdXa2qqirl5+ersrJShYWFCc8lSa+//rp27NghSbpy5YpaW1v1la98JeHZHn74Yb377ruybVtXrlxRR0eHZs6cmfBcknT69Gl9+ctf7rnthtd+RkZGz4fdI0aMUDgcjmuuu+aMUjdegqChoUHf//73dejQIX388cfatGmTLMtSTk6Otm3bpuTk5EHPtG3bNv3pT39STk5Oz30vvviitm3bltBs7e3teuGFF3T16lWFw2E9+eSTevDBB13xnN1SUlKiLVu2KCkpyRW5QqGQXnjhBV2+fFkej0fPPfecRo0a5YpsL7/8surq6mTbttatW6esrCxX5Hr11Vfl9Xr1xBNPSJIr/l22tbVpw4YN+vTTT2VZllasWKHJkyfHLdddU+oAgMjumt0vAIDIKHUAMAilDgAGodQBwCCUOgAYhFLHPW/fvn2aNWvW506GAu5WlDrueb///e/16KOP6o9//GOiowAD5p7z7IEEqKurU3Z2tpYtW6b169dr4cKF+tvf/qYf/OAHSktL05gxY+Tz+bRjxw5VVVXpD3/4gzwejx599FGtWLEi0fGB27Cljnvaa6+9psWLF/dcy+TcuXOqqKjQjh079Ktf/UrZ2dmSpAsXLuitt95STU2NampqdPToUX300UcJTg/cji113LNu3Lih2tpaXb9+XVVVVWptbVV1dbX+9a9/KTc3V9LN65y89dZbOn/+vC5fvtxz+vmNGzf0ySeffO5yDIAbUOq4Z7355pv6zne+o7KyMklSR0eHvva1r2no0KG6cOGCJkyYoHPnzkmScnJyNGHCBL366qvyeDzav3+/6y4qB0iUOu5hr732ml5++eWe28OGDdP8+fOVmZmpDRs2KDU1VUOGDNF9992niRMnaubMmVq+fLlCoZCmTJmi++67L4HpgTvjgl7A/3PgwAEtWLBAo0eP1o9+9CMNGTJETz/9dKJjAf3Cljrw/4wZM0YrV65Uamqqhg8f3nNNc+BuwJY6ABiEQxoBwCCUOgAYhFIHAINQ6gBgEEodAAzyf0e8H5KVeeqcAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# In this if we do kde=false, it becomes histo.\n",
    "sns.distplot(df['Age'].dropna(),kde=False)\n",
    "\n",
    "# This is kind of Normal Distribution with some outliers. "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This is just to see the average AGE  of all the passengers on board. \n",
    "But we can do better!"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x211c2b560d0>"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.boxplot(x='Pclass',y='Age',data=df)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The cheapest were bought by young people."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Pclass\n",
       "1    38.233441\n",
       "2    29.877630\n",
       "3    25.140620\n",
       "Name: Age, dtype: float64"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#The same thing you visualized above can be solved using a Box-Plot\n",
    "df.groupby(by='Pclass').mean()['Age']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [],
   "source": [
    " #Now, the aim is to fill in the Above values wherever age is missing. \n",
    "    \n",
    "# ac = [['Age','Pclass']]\n",
    "def impute_age(ac):\n",
    "    Age = ac[0]\n",
    "    Pclass = ac[0]\n",
    "    \n",
    "    if pd.isnull(Age):\n",
    "        \n",
    "        if Pclass == 1:\n",
    "            return 38\n",
    "        elif Pclass == 2:\n",
    "            return 29\n",
    "        else:\n",
    "            return 25\n",
    "    \n",
    "    else:\n",
    "        return Age"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [],
   "source": [
    "# ac.iloc[:,0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x211c4f69220>"
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.heatmap(ac.isnull())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [],
   "source": [
    "df['Age'] = df[['Age','Pclass']].apply(impute_age,axis=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x211c35f4760>"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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2LFcunSJ6OhonnrqKYtjAvzyyy/s3LnTdKzT6dixY4cqsb28vJg/fz6NGzfm4MGDVKsmG0RourIuJSWFDz/8kJMnT1K7dm2io6MLXdOzuPR6PadOnaJ69er4+PioFrfAhQsXTGNsakhJSVE9sen1epYtW8bly5dp37499erVu2uB65K6d5zf2dmZxx9/nP79+5uWByypr7766oHv9ezZ06LY2dnZpKSk0KBBA7Zv3067du1MezZaon///ixcuJBRo0axbNkyQkJC2LBhg8Vxb926xcGDB03/XxRs6qtlmZmZfPXVV5w8eZJatWrRr18/HB0dy7pZZUrTPeLatWurcgf/fv78808mTZrErVu36N69O3Xq1KFDhw4Wx12xYgVubm7cvHmTDRs20LZt20JvPprr8OHDbNq0iezsbH7++WcAYmJiLI4bFRXFc889xy+//EKlSpUYP348q1atsjhudnY2vr6+NG/enN9++43ff/8dHx8f3nvvPRYvXlziuMnJyfTs2RODwcC6detwcXEhMDAQBwd1ZmK+++67tGnTxvSVefPmzcyZM8fiuA4ODnh7e6PT6XB1dcXDw0OF1sKwYcNYs2YNzz33nCrxJk+eTHR0NEFBQf8YPomPj1flGq6urri4uFCxYkXq1q3LjRs3rNIRsiWaTMTPPvvsA9/74YcfVLnG1KlTmT59OhMmTKB3794MGTJElUS8adMmVq5cyZAhQ9i0aRP//ve/VWgtvPfeewwdOpTy5curEq/A9evX6d27N99++y0BAQGqzfe9du2aabigbdu2DBo0iNGjRxe5+Elhli9fzn//+1/WrFnDBx98wN9//03VqlWJjY1lwoQJqrT70qVLhISEAPnDNqGhoarErVGjBnPmzOH69essWbKEqlWrqhK3QoUKfPHFF/j7+5v+GBX276coBTMuCv7bWUN0dDSVK1dmz549NGrUiPfee4+lS5da7Xq2QJOJuCDZ3rx5U/XEcyc/Pz90Oh0+Pj6q9VB0Oh1paWlUqlQJnU7HjRs3VInr5+dHr169VIl1r5SUFCB/rqtaPUu9Xk9KSgq1a9cmJSWFzMxM0tPTyczMLHHMpKQk4uPj0el0bNy4ka1bt1KhQgWCg4NVaXOB06dP4+/vz7lz5zAa1dnj7P3332fdunU0a9YMd3d3pk6dqkrcihUrkpycTHJysuk1SxJxwbQ9o9HIBx98wJkzZ6hTp45p6p0azp07x7Rp09i/fz8dO3ZkyZIlqsW2VZpMxAWGDx9umvertgoVKhAfH09WVhabNm1SLeG3atWKAQMGMGfOHGJjY3nhhRdUidulSxfGjBlD7dq1Ta+pUWgwYcIEoqKiOHnyJG+88YZqCSI6Opp3332Xy5cv4+bmRs+ePfnvf//LiBEjShzTwcEBR0dHjh49iq+vr2msWc3bHOPHj2f06NFcvXqVypUrM3nyZFXi7t+/39TTzsrKYsqUKarEvnde/eXLly2OCflDVkOGDCEgIIB9+/YRFRXF8uXLVYldMEtJp9Oh1+tV++NvyzSdiNX+2nWn2NhYFi9eTMWKFTly5AjTpk1TJe6YMWMYM2YMAE899ZQqN3oAvvzySzp37qzaH4yjR48yfvx41q1bx+DBg4mJiSEjI4MLFy7QoEEDi+M3btyYmJgYVq1axY8//sjVq1cZOXKkxXFPnz7Nhg0bTDel/vzzT1X/Ie/bt0+VQot7ffjhh3h4eGA0Ghk/fjyvvPKKKnEXLFjAl19+SU5ODrdv36ZmzZps2rTJ4riOjo60a9cOyC/E+OKLLyyOWWD06NGEhISQlpZGUFAQ48ePVy22rdJ0Ilb7a9edFixYQN++fXniiSdUiVdgx44dpn8YiqJw/fp1EhMTLY5boUIFhg0bpkIL882bN48ZM2bg7OzM/PnzWbp0KX5+fgwZMoROnTqVOK7BYGDTpk2sXr0aFxcX9Ho9O3bswM3NzeI2v/3224wbN45q1aoRHh7OL7/8wrvvvsuHH35ocewCu3bt4rXXXlP9Lv7ChQt54403MBgMfPjhh3d9s7FEUlISSUlJxMbGMnDgQN5//32L4hUMC7q7u7N06VJatGjB4cOHVas0BGjatClbt27l2rVrVKxYkb/++ku12LZK04l4+vTpnD59mnPnzlGvXj0qV66sWuyAgABmzZpFRkYGvXr1omvXrqoki4ULFzJx4kTi4+Np1aoVe/bsUaG1+X+UoqOjadCggelu9oM2NjSHoig8+eSTXLp0iaysLBo2bAhgce+yY8eOdOvWjdmzZ1OzZk2GDBmiyu8V8nvZ69atMx03adKE7du3q/atAyA9PZ22bdtSvXp1U5GEJbMF5syZc1dhyO7du0097pLOeb6Tt7c3Li4uZGRk4Ofnd9caGSVR0Jv29vbm1KlTnDp1ClCvgAjyy8gXLFiAj48P8fHxLF++nK1bt6oW3xZpOhHfub5Cz549OXv2rGoLx7z44ou8+OKLXL58menTpxMbG8v+/fstjluxYkWaNm1KfHw8vXr1UmWuKGCa23vlyhVV4hXchNq9ezdt2rQB8nuzd256WBJhYWFs3LiR1NRUevfubZVV137//XcmTZrElStXqFq1Ku+//75q86otmVp3P3cu7OPv70/Lli1Vjf/444+zfv163N3dmTNnTpG7BRflQWu5qDX2DNCmTRveffddbt26hZeX110FNHar7Kqri2at9RUURVFSU1OVjz76SHnllVeUiIgI5cCBA6rEHT58uPLLL78o4eHhSlJSkvLCCy+oEldRFOXSpUtKamqqcv78eYvb+8knnyhBQUFKu3btlD/++EM5e/asMnDgQGXx4sWqtPXnn39W3nnnHaVly5bKBx98oBw/flyVuIqSv77Cn3/+qSiKoiQnJyshISGqxT5z5oyyePFiJS4uTomLi1MmTpyoStyDBw8qX3zxhaIoihIeHq4cOXLEongLFy5UFEVR8vLylAMHDii3bt1SVqxYYfq9WOrDDz9UWrVqpQQEBCgNGjRQunbtanHM7Oxs02PZsmXK4MGDTcf2TtOJ2JoLx/Tq1UtZs2aNcuvWLdViKoqiXLx4UdmzZ4/y559/Km+++aayceNGVeJGRkYqL730ktK+fXuldevWSp8+fSyOefLkSeXatWuKoijK2bNnlW3btlkc8143btxQVqxYobz66quqxbx3YR41F+oJCgpSFi9erAwcOFB57733lFGjRqkSNzAw0JQkz507p/Tr18+ieAX/Ju59rpbAwEAlOztbmTRpknLmzBll4MCBFsfs0KGD0rFjR6Vjx45Khw4dTI+OHTuq0GLbpumhCWssHFOwLuysWbNMc34LFgCyZHGXOxcuKVh3dsyYMaot7nLq1Ck2bdpEdHQ0Y8aM4e2337Y45p03jGrUqEGNGjUsjnmv8uXLExoaqkphREJCApC/fGJMTIzpRpIai/4UcHNzY/jw4Zw5c4bp06fTr18/VeI6OTmZbgz7+vpaPBav3DHko1hh+EftsWfAtHbFN998w6uvvmpxvIeJphOxNRaOWb58OZGRkUyaNOmu1y1d3OXOsWudToeiKKYkrMaiMR4eHuh0OjIzM/Hx8VF1ASRbUfAH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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.heatmap(df.isnull())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "#There are feature engineering ways to handle the case where the \n",
    "#coulmn is very empty like the cabin column. \n",
    "\n",
    "#So, we will skip that for now and use Feature Engineering. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [],
   "source": [
    "df = df.drop('Cabin',axis=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x211c62b3430>"
      ]
     },
     "execution_count": 47,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# df.head()\n",
    "sns.heatmap(df.isnull())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "2"
      ]
     },
     "execution_count": 48,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sum(df['Embarked'].isnull())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {},
   "outputs": [],
   "source": [
    "df = df.dropna()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x211c6759b50>"
      ]
     },
     "execution_count": 50,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXMAAAEqCAYAAADnO7CtAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzdeXxMZ//4/9dkjywili4khAqlTW3VxVZUtWirgsmE+CqqWrQSQmxJakmo0kVt5S5qS0R10XxabtwVRRGlKrXcYqvUEhKVmUS2Ob8/8su5xZZJcoYs7+f9mMcjM+fMda5J3e9cc53r/b50iqIoCCGEqNBsHnQHhBBClJ0EcyGEqAQkmAshRCUgwVwIISoBCeZCCFEJSDAXQohKQNNgbjabCQ8PR6/XExQUxNmzZ7VsXgghygVLYl1WVhYBAQEkJyff8z1nz57FYDAQGBhIREQEZrO5VH3SNJhv3bqVnJwcYmNjGTt2LLNmzdKyeSGEKBeKi3V//PEHAwYM4K+//ir2PdHR0YwZM4a1a9eiKArbtm0rVZ80DeYHDhygQ4cOALRo0YIjR45o2bwQQpQLxcW6nJwcFixYQMOGDYt9T1JSEm3btgWgY8eO7N69u1R9sivVu+7CaDTi6uqqPre1tSUvLw87uztfJrFeby0vL4SoxNqc/7bMbeReOWXxuRu37Sc2NlZ9rtfr0ev1QPGxrnXr1re1d7f3KIqCTqcDwMXFhYyMjJJ9qP+fpsHc1dUVk8mkPjebzXcN5EIIcd+Z8y0+9ebgfavSxLq7vcfG5n8TJCaTCXd3d4v7eDNNp1latWpFQkICAIcOHcLX11fL5oUQomwUs+WPeyhNrLvbe5o1a8bevXsBSEhIoE2bNqX6aJoOm7t168auXbsICAhAURSioqK0bF4IIcqmlCtFbnWnWLdp0yYyMzPvOpq/W3ycMGECU6dOZd68eTRs2JDu3buXqk+6B1k1UebMhRCW0mLOPOfvJIvPdXi0eZmvdz/JhLYQourQaGReHkkwF0JUHfm5D7oHViPBXAhRdRRzY7MiK9NqlqtXr9KpUyeSk5M5efIkBoOBgIAAIiMjyc+3fAmQEELcF2az5Y8KptTBPDc3l/DwcJycnACYN28eISEhxMTEcOPGDbZv365ZJ4UQQguKYrb4UdGUOpjPnj2bgIAA6tSpA8D8+fN5+umnycnJITU1lZo1a2rWSSGE0ISMzIvauHEjnp6eap0BKEhNTUlJoVevXqSnp+Pj46NZJ4UQQhMaJQ2VR6VaZz5gwAB0Oh06nY6jR4/SoEEDFi1aRO3atQGIi4sjMTGR2bNn37MdWWcuhLCUFuvMs4/+x+JzHR/vXObr3U+lWs2yZs0a9eegoCAiIyOZOnUqYWFhNGjQABcXlyL1BoQQolyogNMnltJsaeLw4cMJCwvD3t4eZ2dnZsyYoVXTQgihjQo4fWKpMgfzVatWqT/HxMSUtTkhhLAeGZkLIUTFpyiVN/9FgrkQourIz3vQPbCaUgXz3NxcwsLCSElJwcbGhunTp/P5559z5coVAFJSUnjqqaf4+OOPNe2sEEKUicyZF7Vjxw7y8vKIiYlh165dfPLJJ8yfPx+Af/75h0GDBjFx4kRNOyqEEGVWgp2GKppSBXMfHx/y8/Mxm80YjcYi2yXNnz+fgQMHqpmhQghRbsjIvKhq1aqRkpLCK6+8Qnp6OosXLwYKCm/t2bNHRuVCiPKpEq9mKVVmz4oVK2jfvj2bN2/mu+++IywsjOzsbH766Sd69eqFra2t1v0UQoiyq8Tp/KUK5u7u7ri5uQFQvXp18vLyyM/PZ8+ePXTs2FHTDgohhGby8ix/VDClmmYZPHgwkyZNIjAwkNzcXIKDg6lWrRqnT5/Gy8tL6z4KIYQmtFpnbjabiYyM5Pjx4zg4ODBjxgzq16+vHt++fTsLFizAzs4Of39/+vfvz8aNG/nmm28AyM7O5ujRo+zatYu//vqLESNG0KBBAwAMBgM9evQocZ9kQ2chRIWgRaGtrJ+/tPhc5xeG3PXYli1b2L59O7NmzeLQoUMsWbKERYsWAQVLt3v06MGGDRtwdnbGYDCwePFitRAhwAcffEDTpk3R6/XExcWRkZHBkCF3v54lpBqWEKLq0GjO/MCBA2oJ8BYtWnDkyBH1WHJyMt7e3lSvXh0HBwdat25NYmKievyPP/7g5MmT6PV6AI4cOcLPP//MgAEDmDRpEkajsVQfTYK5EKLqKMHmFLGxsfTp00d9xMbGqs0YjUZcXV3V57a2tuT9//PsRqNRvacI4OLiUiRAL1myhJEjR6rP/fz8GD9+PGvWrMHLy4sFCxaU6qNJOr8QouoowSoVvV6vjp5v5erqislkUp+bzWY13+bWYyaTSQ3u169f59SpUzz77LPq8W7duuHu7q7+PH36dMs/z00sGpn//vvvBAUFAdx14+b169fTp08f+vfvz3/+Y3kBeCGEuG/y8yx/3EOrVq1ISEgA4NChQ/j6+qrHGjVqxNmzZ7l27Ro5OTkkJibSsmVLAPbv38/zzz9fpK2hQ4dy+PBhAPbs2UPz5s1L9dGKHZkvXbqU77//HmdnZ+B/Gzc//fTThIWFsX37dlq0aMGqVav4+uuvyc7OJjAwkHbt2uHg4FCqTgkhhFVolDTUrVs3du3aRUBAAIqiEBUVxaZNm8jMzESv1xMWFsbQoUNRFAV/f38eeughAE6fPk29evWKtBUZGcn06dOxt7enVq1apR6ZFxvMvb29mT9/PuPHjwcK0vVtbW2LbNx8+PBhWrZsiYODAw4ODnh7e3Ps2DH8/PxK1SkhhLAKjYK5jY0N06ZNK/Jao0aN1J+7dOlCly5dbnvfsGHDbnutefPmmuwFUew0S/fu3YvUXrnTxs3FTfgLIUS5IBmgRdWtW5ctW7ZgMBiYNWvWPSf8hRCi3CjBapaKpsTBfMSIEZw5cwZA3bjZz8+PAwcOkJ2dTUZGBsnJyUVuCAghRLmg0Q3Q8qjESxPvtHFz7dq1CQoKIjAwEEVRCA4OxtHR0Rr9FUKI0quA0yeWknR+IUSFoEk6/4YZFp/r3HdKma93P0nSkBCi6qiAc+GWkmAuhKg6HtxEhNVZFMx///13PvroI1atWkVwcPAdN25es2YNGzduRKfTMXLkSDp37mzVjgshRIlV5ZH5rRmgH3/8MVB04+a0tDTWrl3Lt99+S3Z2Nj179uSFF15Ap9NZt/dCCFESFXCViqWKXZpYmAF6q5s3bvb09OS7777D3t6eK1eu4O7uLoFcCFH+VOV15rdmgML/Nm7u06eP+pqdnR2rV69Gr9fTvXt37XsqhBBlpSiWPyqYUmWA3m3j5oEDB7Jz507279/Pr7/+qkkHhRBCM1V5ZH4nt27cfOrUKUaNGoWiKNjb2+Pg4ICNjex7IYQoZypxMC/V0sRbN25u2LChup+dTqejQ4cOtG3bVrNOCiGEFpR8bTZ0Lo8kA1QIUSFokQGaufh9i8+tNuLTMl/vfpKkISFE1VGJa7NIMBdCVB3mirdKxVISzIUQVUcFvLFpqXsG89zcXCZNmkRKSgo5OTm88847dO3aFYCoqCh8fHwwGAwA7NixgwULFgDQrFkzIiIiJHFICFG+VOJgfs/1g99//z0eHh6sXbuWpUuXMn36dNLS0hg2bBjbt29XzzMajcyZM4fFixezfv166tatS3p6utU7L4QQJZKfb/mjgrnnyPzll18uks1pa2uLyWRi9OjRJCQkqK8fPHgQX19fZs+ezV9//UW/fv3w9PS0Xq+FEKI0NJozN5vNREZGcvz4cRwcHJgxYwb169dXj2/fvp0FCxZgZ2eHv78//fv3B6B3797qlpr16tUjOjqas2fPEhYWhk6no3HjxkRERJQqT+eewdzFxQUoGHm/9957jBkzBi8vL7y8vIoE8/T0dPbu3cu3335LtWrVGDBgAC1atMDHx6fEHRJCCKvRaDXL1q1bycnJITY2lkOHDjFr1iwWLVoEFExPR0dHs2HDBpydnTEYDHTu3Bl3d3cAVq1aVaSt6OhoxowZwzPPPEN4eDjbtm2jW7duJe5TseH/woULDBo0iNdff51XX331jud4eHjw5JNPUrt2bVxcXGjTpg1Hjx4tcWeEEMKqzIrFj9jYWPr06aM+YmNj1WYOHDhAhw4dAGjRogVHjhxRjyUnJ+Pt7U316tVxcHCgdevWJCYmcuzYMbKyshgyZAiDBg3i0KFDACQlJalJlh07dmT37t2l+mj3HJlfuXKFIUOGEB4eznPPPXfX85544glOnDhBWloa7u7u/P777+rXCiGEKC+UEtwA1ev16PX6Ox4zGo24urqqz21tbcnLy8POzg6j0ahOpUDBDIfRaMTJyYmhQ4fSr18/zpw5w1tvvcVPP/2EoijqYhEXFxcyMjJK9dnuGcwXL17M9evXWbhwIQsXLgQK6ps7OTkVOc/T05OxY8cybNgwoGCu3dfXt1QdEkIIq9FoztzV1RWTyfS/Zs1mtbrsrcdMJhNubm74+PhQv359dDodPj4+eHh4kJqaWmR+3GQyqdMxJXXPYD5lyhSmTLnzpqajR48u8rxnz5707NmzVJ0QQoj7QqNVKq1ateI///kPPXr04NChQ0UGr40aNeLs2bNcu3aNatWqkZiYyNChQ9mwYQMnTpwgMjKSS5cuYTQaqV27Ns2aNWPv3r0888wzJCQk8Oyzz5aqT1KbRQhRIWhRm8UUabD4XJfIdXc9Vria5cSJEyiKQlRUFH/++SeZmZno9Xp1NYuiKPj7+zNgwABycnKYOHEif//9NzqdjnHjxtGqVStOnz7N1KlTyc3NpWHDhsyYMeO28uKWkGAuhKgQNAnm4QEWn+syLabM17ufSpwB+vDDDzNixAgaNGgAgMFgoEePHnzxxRfEx8fj6urKsGHDZENnIUT5U1ULbRVmgM6ZM4f09HTeeOMNRo4cyZtvvsmQIUPU844fP84PP/xAXFwcAAEBATz77LPqJtBCCFEuVNVCW3fKAD1y5AinT59m27Zt1K9fn0mTJpGcnEzbtm1xdHQEoH79+hw/fpwWLVpYt/dCCFECSl7FS9O31D2ThlxcXHB1dS2SAern58f48eNZs2YNXl5eLFiwgCZNmpCYmIjRaCQ9PZ2DBw+SlZV1vz6DEEJYpgRJQxVNsSVwL1y4wMiRIwkMDOTVV1/l+vXr6jrIbt26MX36dBo1asSAAQN46623qF+/Pk899RQ1atSweueFEKJEKvGc+T1H5oUZoKGhofTt2xeAoUOHcvjwYaBgY+fmzZuTlpZGeno669atY/LkyVy4cIHGjRtbv/dCCFESVXVkfqcM0LCwMKKiorC3t6dWrVpMnz4dFxcXzp8/j7+/P/b29owfP75U6ySFEMKalAoYpC0l68yFEBWCFuvMM97rZfG5bp/9UObr3U+ybZwQouqoxKtZJJgLIaqOSjzNIsFcCFFlPMBZZasrNpjn5+czZcoUTp8+ja2tLdHR0SiKcsdtjlasWEF8fDwAnTp1YtSoUVb/AEIIYbGqPDL/z3/+A0BMTAx79+5Vg/mt2xw1bdqU77//nri4OHQ6HYGBgbz44os0bdrU6h9CCCEsUpWD+YsvvsgLL7wAwN9//02tWrX4+eefi2xztGvXLl544QWWLVumLknMy8tT0/uFEKI8qMxLEy3aAtrOzo4JEyYwffp0unfvfsdtjuzt7fH09ERRFGbPnk2zZs1kQ2chRPmSp1j+qGAsvgE6e/Zsxo0bR//+/cnOzlZfv3mbo+zsbCZNmoSLiwsRERHa91YIIcqgSo/Mv/32W5YsWQKAs7MzOp2OJ554gr179wKQkJBAmzZtUBSFd999lyZNmjBt2jTJABVClD9VNZ0f4KWXXmLixIkMGDCAvLw8Jk2aRKNGjZg6dSrz5s2jYcOGdO/ena1bt7Jv3z5ycnLYuXMnACEhIbRs2dLqH0IIISxSeetsSTq/EKJi0CKdP73fCxafWyPu5zJf736SpCEhRJWhaHRjs3BD5+PHj+Pg4MCMGTOoX7++erxwQ2c7Ozv8/f3p37//Hbfh7Nq1K0lJSXfcirOkJJgLIaoOjaZZtm7dSk5ODrGxsRw6dIhZs2axaNEioGDv5OjoaDZs2ICzszMGg4HOnTuTkJBw2zacXbt25c8//7xtK87SKFUGqLe3NwCbNm1i9erVxMbGAjBjxgx+++03XFxcAFi4cCFubm5l6qAQQmhFq70pDhw4QIcOHQBo0aIFR44cUY8lJyfj7e1N9erVAWjdujWJiYl33IYTuONWnK6uriXuU6kyQBctWsTRo0fZsGFDkVoHSUlJLFu2DE9PzxJ3RAghrK4EwTw2NlYdqALo9Xr0ej0ARqOxSMC1tbUlLy8POzs7jEZjkUGsi4sLRqNRHeTevA0ngJ+fH/369eOJJ55g0aJFLFiwgAkTJpT4o5UqAzQ9PZ2PPvqISZMmMXXqVKBgDuns2bOEh4dz5coV+vbtq+5OJIQQ5UFJRuY3B+9bubq6YjKZ1Odmsxk7O7s7HjOZTGpwv3UbTijYfvPWrThLo8QZoC+99BKTJ09Wk4MKZWZmMnDgQObMmcOyZctYu3Ytx44dK1WnhBDCKswleNxDq1atSEhIAODQoUP4+vqqxxo1asTZs2e5du0aOTk5JCYm0rJlyztuwwl33oqzNEq0NDE1NZWuXbtSq1Yt6tatS3Z2NidPnsTf35+wsDCysrLUrx4ffvghvr6+9O599+WHsjRRCGEpLZYmXu7ayeJz62zbcddjhatZTpw4gaIoREVF8eeff5KZmYler1dXsyiKgr+/PwMGDGDGjBn8+OOPNGzYUG1n6dKlJCcnM3369CJbcZZmzrzYYP7tt99y6dIl3n77bYxGI6+99ho//vgjjo6OnD9/npCQENavX09ycjLBwcF88803mM1mgoKCmD59+j03dpZgLoSwlBbB/FJny4P5Q/+5ezAvj0qVAXqnaoiNGjXi1VdfpX///tjb2/P666/fM5ALIcR9p+gedA+sRjJAhRAVghYj84sdX7D43IcTfi7z9e4nSRoSQlQZirnyjswlmAshqgytkobKIwnmQogqw5xfhUfmd0rnN5lMREREYGtrS4MGDZg5cyY2Njb861//Ij4+Hp1Ox4gRI+jWrdv9+AxCCGGRKj3Ncqd0fhsbG0aOHEmnTp0YO3YsP//8M23atGHVqlVs2bKFrKwsevfuLcFcCFGuPLjlHtZXqnT+hx56iGvXrqEoCiaTCTs7O5ydnXn00UfJysoiKytL3SNUCCHKiyo9Mof/pfP/+9//5rPPPuPatWtMmzaNRYsW4ebmxjPPPAPAI488Qs+ePcnPz+ftt9+2aseFEKKkqnwwh6IbOmdlZbFmzRoaN27MmjVrmDVrFu3bt+fy5cts27YNKKg30KpVK/z8/KzWeSGEKInKfAO0VBs6e3h4qLUD6tSpw/Xr16levTpOTk44ODjg6OiIm5sb169ft27vhRCiBBRFZ/GjoilVOr+HhwfBwcHY2dlhb2/P9OnTqVevHrt376Z///7Y2NjQqlUr2rVrdz8+gxBCWKQyrzOXdH4hRIWgRTr/icdftvhc36M/lfl695MkDQkhqoyKOH1iKQnmQogqozKvZrFop6GrV6/SqVMnkpOTOXnyJAaDgYCAACIjI8nPz1fPS0tL46WXXiI7O9tqHRZCiNIy5+ssflQ0xQbz3NxcwsPDcXJyAmDevHmEhIQQExPDjRs32L59OwA7d+5kyJAhXLlyxbo9FkKIUjIrOosfFU2xwXz27NkEBARQp04dAObPn8/TTz9NTk4Oqamp1KxZs6AhGxuWL1+Oh4eHdXsshBClVJmXJt4zmG/cuBFPT086dOigvmZra0tKSgq9evUiPT0dHx8fANq1a0eNGjWs21shhCgDRbH8UdHcM5h//fXX7N69m6CgII4ePcqECRNITU2lbt26bNmyBYPBwKxZs+5XX4UQoky0mmYxm82Eh4ej1+sJCgri7NmzRY5v374df39/9Ho969evv+d7zp49i8FgIDAwkIiICMzm0i2Gv2cwX7NmDatXr2bVqlU8/vjjzJ49m6lTp3LmzBkAXFxcsLGx6B6qEEI8cFpNs2zdupWcnBxiY2MZO3ZskUFtbm4u0dHRfPnll6xatYrY2FhSU1Pv+p7o6GjGjBnD2rVrURRFLYlSUiVemjh8+HDCwsKwt7fH2dmZGTNmlOrCQghxv+VrtDTxwIED6vRzixYtOHLkiHosOTkZb29vqlevDkDr1q1JTEzk0KFDd3xPUlISbdu2BaBjx47s2rWrVOXDLQ7mq1atUn+OiYm563mFq1uEEKK8KcmNzdjYWGJjY9Xner0evV4PgNFoVOtTQcG9xLy8POzs7DAajbi5uanHXFxcMBqNd32PoihqyXAXFxcyMjJK9dkkaUgIUWWUZMnhzcH7Vq6urphMpv+1azZjZ2d3x2Mmkwk3N7e7vufmqWqTyYS7u7vFfbyZTHgLIaoMpQSPe2nVqhUJCQkAHDp0CF9fX/VYo0aNOHv2LNeuXSMnJ4fExERatmx51/c0a9aMvXv3ApCQkECbNm1K9dlkZC6EqDK0Sgbq1q0bu3btIiAgAEVRiIqKYtOmTWRmZqLX6wkLC2Po0KEoioK/vz8PPfTQHd8DMGHCBKZOncq8efNo2LAh3bt3L1WfLKqaePXqVfr06cOXX37J559/rmZ5pqSk8NRTT/Hxxx8DBV8bhg8fTteuXTEYDMVeXKomCiEspUXVxJ0P97X43A4XN5T5evdTsSPzW9P5CwP3P//8w6BBg5g4caJ67ieffMI///xjpa4KIUTZKFS8zE5LlTidv9D8+fMZOHCg+vpPP/2ETqejY8eO1umpEEKUkVmx/FHRlDidHwqmXfbs2UOfPn0AOHHiBD/88APvv/++9XoqhBBlZEZn8aOiuec0y9dff41Op2PPnj1qOv+iRYvYsmULvXr1wtbWFijYJ/TSpUv8v//3/0hJScHe3p66devKKF0IUa5U5mmWewbzNWvWqD8HBQURGRlJ7dq12bNnD++88456bPz48erP8+fPp1atWhLIhRDlTiXeArR0SxNPnz6Nl5eX1n0RQgiryq/EI3PZ0FkIUSFosTTx/x4KsPjcHpfuXrakPJKkISFElVFl58yFEKIyqcT7OUswF0JUHRVxyaGlLArmvXv3Vks61qtXj+joaACioqLw8fHBYDBw9OhRtdYAFBSSWbBggaxqEUKUG/kPugNWVGwwz87OBorWM09LS2P8+PGcOXOGoUOHAvD444+r5/z444/UqVNHArkQolwx66rwyPzYsWNkZWUxZMgQ8vLyCAkJoWbNmowePVot53izzMxM5s+fz+rVq63SYSGEKK0KmKVvsWKDuZOTE0OHDqVfv36cOXOGt956i59++gkvL687BvMNGzbw8ssv4+npaZUOCyFEaVXppCEfHx/q16+PTqfDx8cHDw8PUlNTeeSRR+54/qZNm/jss88076gQQpRVZV7NUmzVxA0bNqi7SF+6dAmj0Ujt2rXveG5GRgY5OTl3DfRCCPEgVdlCWwB9+/Zl4sSJGAwGdDodUVFR6l53tzp9+jR169bVvJNCCKGF/IoXoy0m6fxCiApBi3T+FXUHWnzu4JSKtYhDkoaEEFVGlV7NIoQQlYU1b4DeuHGD0NBQrl69iouLC7Nnz75tVd/69euJiYnBzs6Od955h86dO5ORkUFoaChGo5Hc3FzCwsJo2bIlW7Zs4cMPP1TvQY4ePZq2bdve9fqlygAdN24cU6ZM4fr16+Tn5/Phhx/i7e19x44KIUR5Yc2lievWrcPX15fRo0cTHx/PwoULmTJlino8NTWVVatW8fXXX5OdnU1gYCDt2rVj+fLlPPvsswwePJhTp04xduxYvvnmG5KSkggNDaV79+4WXb9UGaBhYWG8+uqr9OjRg19//ZVTp07h7Ox8x446ODiU9HcihBBWYc1gfuDAAYYNGwZAx44dWbhwYZHjhw8fpmXLljg4OODg4IC3tzfHjh1j8ODBapzMz8/H0dERgKSkJI4ePcrKlSvx8/Nj3Lhxd118AqXMAP3tt99o0qQJgwcPpm7dukyePJk9e/bcsaN+fn6l/uUIIYSWSrKaJTY2ltjYWPW5Xq9Hr9cDEBcXx8qVK4ucX7NmTXUGw8XFhYyMjCLHjUajerzwHKPRiLu7O1Awcg8NDWXSpEkAtGvXjhdffJF69eoRERFBTEwMAwfe/QZuqTJA//rrL9zd3VmxYgWff/45S5cupUGDBnfsqBBClBclGZnfHLxv1a9fP/r161fktVGjRmEymQAwmUxqkC7k6uqqHi88pzBmHj9+nJCQEMaPH6/Oi/v7+6ttdO3alc2bN9+zv8UmDfn4+PDaa68VyQC1sbGhS5cuAHTp0oUjR47cs6NCCFEeKCV4lFSrVq3YsWMHAAkJCbRu3brIcT8/Pw4cOEB2djYZGRkkJyfj6+vLyZMnef/995k7dy6dOnUq6Kei8Nprr3Hx4kUA9uzZQ/Pmze95/WJH5hs2bODEiRNERkaqGaDdunVjx44d9O7dm/379/PYY4/h5+fHJ598QnZ2Njk5OWpHhRCivLDmahaDwcCECRMwGAzY29szd+5cAJYvX463tzddu3YlKCiIwMBAFEUhODgYR0dH5s6dS05ODjNnzgQKRvCLFi1ixowZjBo1CicnJxo1akT//v3vef1ik4ZycnKYOHEif//9NzqdjnHjxvHQQw8xZcoUsrKycHV1Ze7cuVSvXp3169cTGxuLoii8/fbbxd6FlaQhIYSltEga+tjb8qSh4HMVK2lIMkCFEBWCFsH8oxIE83EVLJhL0pAQosqozFUTJZgLIaqMKl3PXAghKosqX5tlyZIlbN++ndzcXAwGA23btiUsLAydTkfjxo2JiIjAxsaGNWvWsHHjRnQ6HSNHjpR0fiFEuWKuxOG82HXme/fu5eDBg6xbt45Vq1Zx8eJFoqOjGTNmDGvXrkVRFLZt20ZaWhpr164lJiaGFStWEBkZyQO8tyqEELcxl+BR0RQbzH/55Rd8fX0ZOXIkI0aM4IUXXiApKUnNUurYsSO7d+/G09OT75HOXOgAACAASURBVL77Dnt7e65cuYK7uzu6SrwTthCi4skvwaOiKXaaJT09nb///pvFixdz/vx53nnnHRRFUQP1zTUI7OzsWL16NfPnzycoKMi6PRdCiBKqzKtZih2Ze3h40L59exwcHGjYsCGOjo5FCsjcWoNg4MCB7Ny5k/379/Prr79ap9dCCFEKZhSLHxVNscG8devW7Ny5E0VRuHTpEllZWTz33HPs3bsXKKhB0KZNG06dOsWoUaNQFAV7e3scHBywsSm2eSGEuG+sWZvlQSt2mqVz587s37+fvn37oigK4eHh1KtXj6lTpzJv3jwaNmxI9+7dsbW1pWnTpuj1enQ6HR06dLjnrhhCCHG/VcQbm5aSdH4hRIWgRTr/hAYGi8+dfWZdma93P0nSkBCiyqiIq1QsJcFcCFFlVMQbm5ay6A7lkiVL0Ov19OnTh7i4OPX1TZs2FdmJY8eOHfTv35/+/ftL0pAQotyp0jdAb84AzcrK4ssvvwTg6NGjbNiwQQ3YRqOROXPm8NVXX+Hp6cnSpUtJT0/H09PTup9ACCEsVJlvgJYqAzQ9PZ2PPvpI3XgU4ODBg/j6+jJ79mwCAwOpVauWBHIhRLmilOB/FU2JM0BHjBhBo0aNmDRpEo6OjkXO27t3L99++y3VqlVjwIABtGjRAh8fH6t+ACGEsFReBQzSlio2mHt4eNCwYUM1A/TixYvY2toSGRlJdnY2J0+eZObMmXTo0IEnn3yS2rVrA9CmTRuOHj0qwVwIUW5U3lBuQTBv3bo1X331FW+++SaXL1/moYce4ocffsDW1pbz588TEhLC5MmTSUtL48SJE6SlpeHu7s7vv/9e7AakQghxP1lzNcuNGzcIDQ3l6tWruLi4MHv27NummtevX09MTAx2dna88847dO7cGUVR6NixIw0aNACgRYsWjB07lkOHDjFz5kxsbW1p3749o0aNuuf1S5UBamtre9t5np6ejB07lmHDhgHw8ssv4+vra+nvQQghrM6aN0DXrVuHr68vo0ePJj4+noULFzJlyhT1eGpqKqtWreLrr78mOzubwMBA2rVrx4ULF2jevDmLFy8u0l5ERATz58/Hy8uL4cOHk5SURPPmze96fYvWmY8fP/6Or9erV4/169erz3v27EnPnj0taVIIIe47a97YPHDggDqY7dixIwsXLixy/PDhw7Rs2RIHBwccHBzw9vbm2LFjnD9/nkuXLhEUFISTkxMTJ06kTp065OTk4O3tDUD79u3Zs2dP2YO5EEJUBiUZmcfGxhIbG6s+1+v1al5NXFwcK1euLHJ+zZo1cXNzA4qWBi9kNBrV44XnGI1GateuzfDhw3nllVdITEwkNDSUBQsW4OrqWuTcv/766579lWAuhKgy8kswMr85eN+qX79+9OvXr8hro0aNwmQyAbeXBgdwdXVVjxee4+bmxmOPPaZOXbdp04ZLly7h4uJy27m3tncrqVErhKgyzIpi8aOkWrVqxY4dO4CC0uCtW7cuctzPz48DBw6QnZ1NRkYGycnJ+Pr68vnnn6uj/GPHjvHoo4/i5uaGvb09586dQ1EUfvnlF9q0aXPP65dqQ+cnnniCiIgIbG1tadCgATNnzsTGxoYvvviC+Ph4XF1dGTZsmGzoLIQoV6y5NNFgMDBhwgQMBgP29vbMnTsXgOXLl+Pt7U3Xrl0JCgoiMDAQRVEIDg7G0dGR4cOHExoayo4dO7C1tSU6OhqADz74gHHjxpGfn0/79u156qmn7nn9Ykvg7t27l+XLl7Nw4UI1nf/YsWP079+fTp06MXbsWHr27EndunUJDQ1Va7cEBASwdu1anJ2d79q2lMAVQlhKixK4gfXfsPjctWe/KfP17qdiR+Y3p/MbjUbGjx+PTqfj2rVrKIqCyWTCzs6O5ORk2rZtq2aF1q9fn+PHj9OiRQurfwghhLBERUzTt1Sxc+bp6ekcOXKETz/9VB32F06tvPLKK1y9epVnnnmGJk2akJiYiNFoJD09nYMHD5KVlXU/PoMQQljEXIJHRVPidH5HR0fGjRvHpk2baNy4MWvWrGHWrFlEREQwYMAA3nrrLerXr89TTz1FjRo17sdnEEIIi+RXyDBtmVJt6Ozt7a2ugaxTpw7Xr18nLS2N9PR01q1bx+TJk7lw4QKNGze2+gcQQghLVemR+Z3S+Z2dnQkODsbOzg57e3umT59OjRo1OH/+PP7+/tjb2zN+/Pg7pv0LIcSDUpk3zJENnYUQFYIWq1le9+5l8bnfnfuhzNe7nyQDVAhRZVTE6RNLSTAXQlQZlfkGaLHBfOPGjXzzTcHi+ezsbI4ePcrKlSuZM2cOiqLQtGlTpk6diq2tLStWrCA+Ph6ATp06FVt/Vwgh7qfKPGde7GqWPn36sGrVKlatWkXz5s2ZMmUKy5YtIyQkhJiYGG7cuMH27dv566+/+P7774mJiSE2NpZffvmFY8eO3Y/PIIQQFqnSq1kK/fHHH5w8eZKIiAj69u2Lra0tOTk5pKamUrNmTR5++GGWLVumrmDJy8srskeoEEI8aFU6A7TQkiVLGDlyJAC2trakpKTQq1cv0tPT8fHxwd7eHk9PTxRFYfbs2TRr1kz2/xRClCtmFIsfFY1Fwfz69eucOnWKZ599Vn2tbt26bNmyBYPBwKxZs4CCOfVx48ZhMpmIiIiwTo+FEKKUFEWx+FHRWBTM9+/fz/PPP68+HzFiBGfOnAEKdsCwsbFBURTeffddmjRpwrRp0yRhSAhR7uRjtvhR0Vg0Z3769Gnq1aunPh8+fDhhYWHY29vj7OzMjBkz2Lp1K/v27SMnJ4edO3cCEBISQsuWLa3TcyGEKKHSbDpRUUgGqBCiQtAiA7RD3a4Wn7szZVuZr3c/SdKQEKLKqIg3Ni0lwVwIUWVIMBdCiEogX6l4NzYtVap0/rZt25KTkwNASkoKTz31FB9//DEzZszgt99+w8XFBYCFCxfi5uZmxe4LIYTlrJk0dOPGDUJDQ7l69SouLi7Mnj0bT0/PIuesX7+emJgY7OzseOedd+jcuTNffPGFumjk+vXrXLlyhV27drFlyxY+/PBDHnnkEQBGjx5N27Zt73r9Et0A/eCDD2jatCl6vR6Af/75h0GDBrF06VLq1KmDwWBgwYIFt32Au5EboEIIS2lxA7TNIx0sPjfxws4Stb18+XKMRiOjR48mPj6egwcPMmXKFPV4amoqQ4YM4euvvyY7O5vAwEC+/vprHBwc1HPefvttBg4cSIcOHfj4449p1qwZ3bt3t+j6FmeAFqbzFwZygPnz5zNw4EDq1KmD2Wzm7NmzhIeHExAQwIYNGyxtWggh7gtrZoAeOHCADh0K/lh07NiRPXv2FDl++PBhWrZsiYODA25ubnh7exepX7Vlyxbc3d3VNpKSkvj6668JDAxk1qxZ5OXl3fP6Fs+Z35zOD3D16lX27NnDxIkTAcjMzGTgwIG8+eab5OfnM2jQIJ544gmaNm1q6SWEEMKqSrISOzY2ltjYWPW5Xq9XB7NxcXGsXLmyyPk1a9ZUp5VdXFzIyMgoctxoNBaZdnZxccFoNKrPlyxZwrx589Tn7dq148UXX6RevXpEREQQExPDwIED79pfi4L5ndL5f/rpJ3r16qVmejo7OzNo0CCcnZ0BePbZZzl27JgEcyFEuVGSEffNwftW/fr1o1+/fkVeGzVqFCaTCQCTyYS7u3uR466ururxwnMKg/vJkydxd3enfv366nF/f3+1ja5du7J58+Z79rdU6fwAe/bsoWPHjurzM2fOEBgYSH5+Prm5ufz22280b97ckuaFEOK+yFfMFj9KqlWrVuzYsQOAhIQEWrduXeS4n58fBw4cIDs7m4yMDJKTk/H19QVg9+7dReKpoii89tprXLx4ESiIt8XF01Kl8xe+5uXlpT5v1KgRr776Kv3798fe3p7XX3+dxo0bW9K8EELcF9ZczWIwGJgwYQIGgwF7e3vmzp0LFNwY9fb2pmvXrgQFBREYGIiiKAQHB6tlwk+fPk27du3UtnQ6HTNmzGDUqFE4OTnRqFEj+vfvf8/rSzq/EKJC0GI1y+N17r6071ZHL+8r8/XuJ0kaEkJUGZV5cwoJ5kKIKqMyV00s9gZobm4uY8eOJSAggMDAQJKTk9VjUVFRrFu3Tn3+r3/9iz59+uDv78+///1v6/RYCCFKSSnB/yqaYoP5jh07yMvLIyYmhpEjR/LJJ5+QlpbGsGHD2L59u3re9evXWbVqFTExMXz55ZdERUVZteNCCFFS1lzN8qAVO83i4+NDfn4+ZrMZo9GInZ0dJpOJ0aNHk5CQoJ7n7OzMo48+SlZWFllZWeh0Oqt2XAghSkqpgEHaUsUG82rVqpGSksIrr7xCeno6ixcvxsvLCy8vryLBHOCRRx6hZ8+e5Ofn8/bbb1ut00IIURqVuQRusdMsK1asoH379mzevJnvvvuOsLAwsrOzbzsvISGBy5cvs23bNn7++We2bt3K4cOHrdJpIYQojcq8oXOxI3N3d3fs7e0BqF69Onl5eeTn5992XvXq1XFycsLBwQGdToebmxvXr1/XvsdCCFFKlXlkXmwwHzx4MJMmTSIwMJDc3FyCg4OpVq3abee1adOG3bt3079/f2xsbGjVqlWRjCYhhHjQ8s2Vd85cMkCFEBWCFhmgD3s8bvG5F68dLfP17idJGhJCVBkVcS7cUhLMhRBVRpWeMxdCiMqiSo/Mc3NzCQsLIyUlBRsbG6ZPn46HhwdTpkzh+vXr5Ofn8+GHH+Lt7c2KFSuIj48HoFOnTowaNcrqH0AIISxVmWuzFBvMb07n37VrF5988gkuLi68+uqr9OjRg19//ZVTp06h0+n4/vvviYuLQ6fTERgYyIsvvig7DQkhyo2KmKZvqWKThu6Uzv/bb79x6dIlBg8ezKZNm2jbti0PP/wwy5Ytw9bWFhsbG/Ly8tTC60IIUR5U5qShYoP5zen8U6dOJSgoiJSUFNzd3VmxYgWPPPIIS5cuxd7eHk9PTxRFYfbs2TRr1gwfH5/78RmEEMIiZkWx+FHRlCqd38PDgy5dugDQpUsXjhw5AkB2djbjxo3DZDIRERFh3Z4LIUQJVekSuO7u7uoO0oXp/C1atFA3Lt2/fz+PPfYYiqLw7rvv0qRJE6ZNm4atra11ey6EECVUmUfmxWaAmkwmJk2aRGpqKrm5uQwaNIhWrVoxZcoUsrKycHV1Ze7cuezbt4+QkBBatGihvjckJISWLVvetW3JABVCWEqLDFAnJ2+Lz71x41yZr3c/STq/EKJC0CKYOzjWs/jcnOzzJWr7xo0bhIaGcvXqVVxcXJg9ezaenp63nZeWlkZAQACbNm3C0dHxru87dOgQM2fOxNbWlvbt2xe71LvYaRYhhKgsrLmaZd26dfj6+rJ27Vp69+7NwoULbztn586dDBkyhCtXrhT7voiICObOncu6dev4/fffSUpKuuf1H2gGqBZ/aYUQwlK5OSkWnxsbG0tsbKz6XK/Xo9fr73r+gQMHGDZsGAAdO3a8YzC3sbFh+fLl+Pv73/N9RqORnJwcvL0LpoXat2/Pnj17aN68+V2vL+n8QghxB/cK3nFxcaxcubLIazVr1lQXi7i4uJCRkXHb++5UFtxoNN72PqPRiKurq3qOi4sLf/311z37K8FcCCFKqF+/fvTr16/Ia6NGjcJkMgEFC0fc3d0tasvV1fW29938mqXtyZy5EEJooFWrVuqS7YSEBFq3bl3q97m6umJvb8+5c+dQFIVffvmFNm3a3LOdB7qaRQghKousrCwmTJhAamoq9vb2zJ07l9q1a7N8+XK8vb3p2rWrem6XLl348ccfcXR0vOv7Dh06RFRUFPn5+bRv357g4OB7Xl+CuRBCVAIyzSKEEJWABHMhhKgEJJgLIUQlIMFclAtnzpxhx44dXLx4sULWkhbiQavS68z3799/12NPP/20ptcym80oisLBgwfx8/PDwcFB0/ahICCePXuWJk2a8NBDD6HT6TRr+6OPPiIkJAQbGxsyMjKYPHkyn332mSZtr169mn//+9/8888/9O7dm3PnzhEeHq5J2zczm82kpaVRs2ZNTX83hc6fP8/mzZvJyspSX9Ny68SLFy/y8MMPq89PnTpFw4YNNWu/kNFoJCUlBS8vL6pVq6Z5+8I6ym0wnzhx4l2PRUdHa3KNdevWAXDu3Dlyc3N58skn+fPPP3FxcWHVqlWaXANgzpw5eHl58ffff5OUlEStWrWYPXu2Zu2D9QOig4MDgwcPZtCgQXz22We8+eabmrUdHx/P2rVrGTRoEIMHDy6S6qyVLVu2MGvWLNzd3TGZTERGRt4xG68sxo4dS4cOHahVq5am7Z44cYJLly7x0UcfERoaCkB+fj7z5s3ju+++0/RaP/30E4sXLyY/P5+XX34ZnU7Hu+++W+Z2u3TpUuQPqJ2dHXl5eTg4OPDjjz+WuX0BKOVUQkKCkpCQoLzzzjvKF198oSQmJirLly9XQkJCNL/WW2+9peTm5iqKoih5eXnKkCFDNG1fr9criqIoAwcOVBRFUQYNGqRp+4qiKAEBAYrZbFav0adPH03bN5vNSmhoqNK8eXNlzZo1mrat1+sVs9msBAUFKYpS8Fm09vrrrytXrlxRFEVRUlNTFX9/f82vYY3/roqiKPv371fCwsKUdu3aKWFhYUpYWJgyceJEJSYmRvNr6fV6JTs7Wxk4cKBiNpuVN954Q5N2s7OzlRs3bigTJ05Ufv/9d0VRFCUpKUmZPHmyJu0LRSm3I/MOHToAsHz5ct566y0AWrduremIsFBqaqr6c35+PmlpaZq2bzabOXz4MPXq1SMnJ0fz9gF1nrlw9KP1NM7AgQNp3rw527ZtIzIykqNHjzJ9+nRN2u7ZsycDBgzg77//5q233uLFF1/UpN2beXh4ULNmTQBq1apVpO5FWZ0+fVptd9OmTTRv3lz976DF1olt2rShTZs2JCUl0bx5c/755x/c3d2tMlVkY2ODg4MDOp0OnU6Hs7OzJu0W/nv866+/8PPzA6BZs2bq706UXbkN5oUyMzPZs2cPTz75JAcPHiQ3N1fza/Tt25eePXvi6+vLyZMnGT16tKbtv/7660yfPp2oqCjmzJnDoEGDNG0foFevXlYNiG+99RYvvPACAIsWLeKrr77SrO2goCCef/55Tpw4QcOGDWnSpIlmbRdydXVl6NChPP300xw5coQbN24wb948oGATlbK4eTpr/fr16s86nU7T35PJZKJXr17qFMijjz56W32QsmrTpg1jx47l0qVLhIeH8+STT2ravpubG5988gl+fn4cPHiQunXratp+VVbuM0CTk5P59NNPOXnyJI0aNSI8PJzatWtrfh2j0cipU6eoV6/eHQvKa+XChQs88sgjVmk7OTnZagHRaDSybNkyLl++zAsvvECTJk2oX7++Jm3fen/E3t6ehx9+mAEDBlC9enVNrvHNN9/c9dgbb7yhyTWys7NJTk6mWbNmbN26lU6dOmFvb69J2wADBgxgwYIFjB49mmXLlmEwGNi4caNm7QNkZGRw8OBB9d9R4V6/WsnMzOSbb77h5MmTNGzYkMDAQNliUiPlfmTeqFEjzVZN3M1///tfIiIiyMjI4NVXX6Vx48Z07txZs/a/+uornJycuH79Ohs3bqRDhw73vMFbGocPHyY+Pp7s7Gz27t0LQGRkpGbtT5o0iY4dO7Jv3z5q1arF5MmTWb16tSZtZ2dn4+XlRZs2bfj999/5448/8PT0ZMKECSxevLjM7R87dow33niDnJwc4uLicHBwwN/fHxsbbVfmhoaG8txzz6nTBz/++CNz587VrH0bGxs8PDzQ6XQ4Ojri4uKiWduFhg8fzrp16+jYsaPmbQM4Ojri4OBAjRo18PX15Z9//rHq4KkqKbfrzNu3b3/Xh9ZmzJhBdHQ0Hh4e9O3bl/nz52vafnx8PL179yYhIYH4+HiOHj2qafsAEyZMoEmTJlb7PV27do2+fftiZ2dHq1atNF0LnpaWRnBwMB06dGDUqFHk5uYyZsyYO9aDLqnly5czdepU8vLy+PDDD9m1axfHjx8nKipKg54XdenSJQwGA1AwLXX58mVN2/f29mbu3Llcu3aNL774gkcffVTT9qFg0/aVK1eSkJDAL7/8wi+//KJp++Hh4fz999/s2rULk8nEhAkTNG2/Kiu3I/PCf0TXr1+3uC5wWdSvXx+dToenp6fmIx6dTkdqaiq1atVCp9Pxzz//aNo+FPS/T58+mrd7s+TkZKBgvbOWo1qj0UhycjKNGjUiOTmZzMxM0tPTyczMLHPbCQkJxMTEoNPp+OGHH9i8eTPVq1cnICBAg57f7vTp0/j4+HDu3DnMZrOmbX/wwQfExcXRunVrnJ2dmTFjhqbtA9SoUYNjx45x7Ngx9TUtBwbnzp1j5syZJCYm0qVLF7744gvN2q7qym0wL/T222+r68GtpXr16sTExJCVlUV8fLzmfzyeeeYZBg4cyNy5c4mKiuKll17StH2A7t27ExwcTKNGjdTXtExYmTJlCpMmTeLkyZO8++67mgaS8PBwQkNDuXz5Mk5OTrzxxhv83//9HyNGjChz2zY2Ntja2pKUlISXl5c6B2+NW0WTJ09mzJgxXL16lTp16jBt2jRN209MTFRH/llZWUyfPl3za9yaw6H1t4vC1WI6nQ6j0aj5VFdVVu6DeeHXPh8fH/U/vNZTCFFRUSxevJgaNWpw5MgRZs6cqWn7wcHBai3iJ598UtObYoXWrl1Lt27dNP9DlJSUxOTJk4mLi2Po0KFERkZiMpm4cOECzZo10+Qafn5+REZGsnr1anbt2sXVq1cZOXKkJm1DwWh548aN6s28//73v1YJIvv379c8iedmn376KS4uLpjNZiZPnsxrr72m+TU+++wz1q5dS25uLjdu3KBBgwbEx8dr1v6YMWMwGAykpqai1+uZPHmyZm1XdeU+mFv7ax8U/APu378/jz32mKbtFtq2bZv6fxBFUbh27RqbNm3S9BrVq1dn+PDhmrYJ8PHHHzNr1izs7e355JNPWLp0KfXr12fYsGFFiu2XRk5ODvHx8axZswYHBweMRiPbtm3DyclJo97D+++/z/jx46lbty4hISHs27eP0NBQPv30U82uUWjHjh0MHjzYaqszFixYwLvvvktOTg6ffvppkW9hWklISCAhIYGoqCjefPNNPvjgA03bb9myJZs3byYtLY0aNWoUu6+lsFy5D+bR0dGcPn2ac+fO0aRJE+rUqaP5NVq1asWcOXMwmUz06dOHHj16aBpQFixYwNSpU4mJieGZZ55h9+7dmrVdqEaNGoSHh9OsWTM1meReO4lbSlEUmjZtyqVLl8jKylJ3B9diZNulSxd69erFRx99RIMGDRg2bJimv3coGPXHxcWpz1u0aMHWrVut8u0oPT2dDh06UK9ePTXpJiYmpsztzp07t0gS0s6dO9VvAGVdI38rDw8PHBwcMJlM1K9fv0idGS2MHTuWzz77DE9PT2JiYli+fDmbN2/W9BpVVbkP5jfXHHnjjTc4e/as5kWYXn75ZV5++WUuX75MdHQ0UVFRJCYmatZ+jRo1aNmyJTExMfTp00fztcGAuub7ypUrmrZbeBNv586dPPfcc0DBiPrmzWZLa9CgQfzwww+kpKTQt29fq1ZL/OOPP4iIiODKlSs8+uijfPDBB5qvxddiGeWd3FxMy8fHh7Zt21rlOgAPP/wwGzZswNnZmblz52I0GjVt/7nnniM0NJSMjAzc3NyKJFmJMnpwlQQsY+2aI4qiKCkpKcrnn3+uvPbaa0pYWJjy22+/adr+22+/rezbt08JCQlREhISlJdeeknT9gtdunRJSUlJUc6fP6/ZZ1iyZImi1+uVTp06KX/++ady9uxZ5c0331QWL16sSfuKoih79+5Vxo0bp7Rt21b58MMPlePHj2vWdiG9Xq/897//VRRFUY4dO6YYDAbNr3HmzBll8eLFyvz585X58+crU6dO1bT9gwcPKitXrlQURVFCQkKUI0eOaNb2ggULFEVRlPz8fOW3335TMjIylK+++kr9nZVVdna2+li2bJkydOhQ9bnQRrkfmStWrjkCMHr0aPr168eaNWs0rdlR6IMPPuDUqVO88847fPrpp7z33nuaX2PSpEkcOnSIrKwsbty4gZeXlyajnuHDh9O1a1c8PT2pUaMG586dw2Aw0K1bNw16XaBt27a0bduW69ev89133zF+/Hi+/fZbzdqHgmSVwnsiTZo0sco0y4QJE+jcuTO//fYbderU0WRp5c1mzJjBrFmzgIIbiWFhYaxZs0aTtn/99VfeffddbGxs+Pjjj/nqq68ICgrSpG1ArcAI//v/dOFr27Zt0+w6VVm5D+bWLMJUWB96zpw56lrwwqJbWhRIurmIUGEd6uDgYKsUSDp16hTx8fGEh4cTHBzM+++/r1nbN99o8/b2xtvbW7O2b+bu7k5QUJCmQSQ2NhYoKLkaGRnJ008/zeHDh63yR9vJyYm3336bM2fOEB0dTWBgoKbt29nZqX+QvLy8NF2Ro9w0xaVYYbpr+/btAHz33Xe8/vrrmrcvKkAwt2YRpuXLlzNx4kQiIiKKvK5VgaSb5/Z1Oh2KoqiBXMsCTAAuLi7odDoyMzPx9PS0SkGyiqjwj3PLli2Bgj+wbm5uPP7445pfS1EUUlNTyczMJDMzU/PksEcffZR58+bRokULDh8+rOligJsHGNYYbBSKi4uTYG4l5b7Q1v0owrR161a6dOlitQQGaxdgApg3bx7Vq1fnypUrXLx4kfPnzxdZxVFVFX77ulOpVS2+fRUyGo0cPXqUkydPUqdOHaZMmULv3r01TVfPzs5m3bp1nD59msceewy9Xq/ZtGPr1q1p3LgxiqJw8uRJ9WetVuQU6t+/Pzk5OUXyRrSsX1OVlftgHhISclsRpscfHNbW0AAAB7ZJREFUf5xjx45ptnpg2rRp7N+/ny5dutC3b1+8vLw0abfQe++9x3PPPYfBYGDp0qUcO3ZMs3/AN88tG41GHB0duXHjBjdu3FDrwFdl0dHRTJw4kaCgILWUgq2tLa6urpp9O1q9ejVffvkldnZ2TJkyRfMiVX/88QdPPvnkHeukaJVzkZKSctdjWpap3bdv322vWXN1TlVS7qdZ0tLS1LrTHTp0YMiQIYwZM4YBAwZodo3w8HBycnLYtm0b06ZNIzc3lxUrVmjW/q0FmLScEy6sl1JIURQ2btyIk5OTBHPgtddeo3fv3qxfv56ff/6ZyMhI3NzcNM0w/eGHH/jpp58wGo2MHz9e82BuMBg4cuTIHTMxtQrm96uuuK+vL7/88gt5eXkoisLly5clmGuk3AfzW4swmUwmzYow3ezw4cP88ssvXL16le7du2vaNlivANPYsWPVn8+ePUtYWBgvvPACkyZN0uwaFVlhBquDg4PmGayFHBwccHBwsNq9isL5fq32vn2Q3nvvPRo0aMCJEydwdHTUbCcjUQGC+c1FmB555BHCw8M1K8JUqEePHjRt2pR+/fppXpfFaDQybtw4qxZgAlizZg0rV65k4sSJmtZir+iUu2SwWusmnzVmLc+fP69+O72V1hmg98O0adOYOHEiM2fO1PQbdlVX7oO5n5/fbRmTWm9l1adPH4YNG6Zpm2D9uVQomMKZOHEi1atXJy4uTrObwpXF3TJYtfxmd/LkScaOHavePLz525IW90acnJw0vVn7oGVnZ5OVlaWuvhLaKPfB/Ntvv+WLL74gOztbfU3rJIOEhATefPNNzQskWXsuFQr2/rS3t+fZZ5+9bcQvqwQK0scDAgK4ePEiixYt4ty5c0RGRtKjRw/NrvHJJ5+oP1ujTnqtWrU029ruQRswYAArVqygXbt2dOrUidatWz/oLlUa5T6YL126lEWLFllt30ywXoEka8+lQkERL3F39yuD1ZqeeOIJq7Z/PxXej0pPT+eVV16xSvJWVVXug7mXl5dmGwffjbUKJN3MWitAZSVA8e5XBqu1VKat1Xbs2MG0adNwd3cnMzOTadOm8cwzzzzoblUK5X6d+ZgxYzAajTz++OPqTSutb/p8/vnnt72mxS49zz//PM899xyKovDrr7+qc7YgUyCiaurXrx9LlizB09OT1NRURo4cKZUTNVLuR+adOnWy+jVq1aoFFIye//zzT82WDlp7LlWIisbFxQVPT08AateuLUsTNVTuR+Z5eXl88803XLhwgWeeeYbGjRur/xisZdiwYSxbtsyq1xCiKilcWnnw4EGqVatG69atOXz4MNnZ2SxduvQB965yKPcj84iICOrUqcPu3bt54oknmDBhgub/8W+u23H58mUuXLigaftCVHWFSytvXmKpVdKWKFDug/m5c+eYOXMmiYmJdOnShS+++ELza4SHh6t1Ozw8PCrVDSchyoPCpZUZGRns27evyFJjoQ3rlAnUUH5+Pmlpaeh0OoxGo6aVDZOSkujduzf/+te/GDhwIKmpqVy8eFHKxwphJUOGDGHr1q0cOnSIQ4cO8fvvvz/oLlUa5X5kPmbMGAwGA6mpqej1ek1rjtyPuh1CiP9xc3OrFDVmyqNyH8zbtm3L5s2bSUtLw93dHTs77bp8t7od1qprLkRV1759e9atW6fumATw9NNPP8AeVR7lPpj/+OOPmM1mcnJymDNnDkOHDmXo0KGatG3NneeFELdLTEwkJyeH/fv/v/buEKS1OIrj+C+MO0HTRFYMC1oM6xpW7BaLCAYtFoMsaxfEtiS4MB1qdmHB4Jo4NKtgUExzgwl6wy33BXl3wnvPp3Dn/+z6/aQLg8tJP/6cu/85TUlvA88I83iYD/Nyuazd3V0Vi0WdnZ1pZWUltjD/jrkdAHp83491VwB6zId5Op2W9HbZwPO8WE/N3zG3A0DP5OSkarWapqamohvdSZoI6ZL5MB8fH9f8/Lw2NzdVKpWUz+djff+gz+0ABsn19bVubm6iWUVBEOj4+NhxVclg/gaoJL2+vmp4eFjtdju6eg9gcKyvr0fjLfb29qJW6dLSkvb3912Wlhjm/7bRbDZ1eXmpRqOhhYUFnZycuC4JwBd1Op3oudFoRM/92vj0E5kP8+3tbeVyOVUqFR0eHsYyZxyAOwPQDBhI5sM8nU5rdHRUqVRKY2NjCoLAdUkAvuj9CZzTeH+Y/wA6MjKi5eVlLS4uqlqt9nXjEID++Nue1DAMdXd357q0xDD/ATQIAj08PGhiYkK3t7fK5XLyPM91WQC+4OLi4p+/sS0rHubD/P7+XvV6PRp+1Wq1/lhcDAA/nfme+e9xtFdXV3p8fFS323VcEQDYYz7Mh4aGtLq6qmw2q62tLbXbbdclAYA55sM8DEM9PT3J9335vq/n52fXJQGAOabD/OXlRWtrazo9PdXc3JxmZ2dVKBRclwUA5pj9AHpwcKByuaxUKqWNjQ1CHAA+YPZkXqvVVK/XdXR0pEql4rocADDNbJh7nifP85TJZNjJCQD/YTbM3zPaCQIAM8z2zGdmZjQ9Pa0wDHV+fh6tdZOknZ0dh5UBgD1mw5zrvwDweWbDHADweQPRMwcAfIwwB4AEIMwBIAEIcwBIgF8PsLoYMkPt6AAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.heatmap(df.isnull())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Missing Values Handled. Now, Just Pick up important features next and perform Encoding of categorical features."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "1. Remove the least Calculationwise important columns:\n",
    ">1. Passenger ID\n",
    ">2. Name"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [],
   "source": [
    "df.columns\n",
    "\n",
    "df = df.drop(['PassengerId','Name'],axis=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Handling categorical variables."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "metadata": {},
   "outputs": [],
   "source": [
    "#First created encoded versions with originals dropped. \n",
    "sex = pd.get_dummies(df['Sex'],drop_first=True)\n",
    "embarked = pd.get_dummies(df['Embarked'],drop_first=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Now Append both these columns to the actual dataset.\n",
    "\n",
    "df = pd.concat([df,sex,embarked],axis=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Survived</th>\n",
       "      <th>Pclass</th>\n",
       "      <th>Sex</th>\n",
       "      <th>Age</th>\n",
       "      <th>SibSp</th>\n",
       "      <th>Parch</th>\n",
       "      <th>Ticket</th>\n",
       "      <th>Fare</th>\n",
       "      <th>Embarked</th>\n",
       "      <th>male</th>\n",
       "      <th>Q</th>\n",
       "      <th>S</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0</td>\n",
       "      <td>3</td>\n",
       "      <td>male</td>\n",
       "      <td>22.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>A/5 21171</td>\n",
       "      <td>7.2500</td>\n",
       "      <td>S</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>female</td>\n",
       "      <td>38.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>PC 17599</td>\n",
       "      <td>71.2833</td>\n",
       "      <td>C</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>female</td>\n",
       "      <td>26.0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>STON/O2. 3101282</td>\n",
       "      <td>7.9250</td>\n",
       "      <td>S</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>female</td>\n",
       "      <td>35.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>113803</td>\n",
       "      <td>53.1000</td>\n",
       "      <td>S</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0</td>\n",
       "      <td>3</td>\n",
       "      <td>male</td>\n",
       "      <td>35.0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>373450</td>\n",
       "      <td>8.0500</td>\n",
       "      <td>S</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Survived  Pclass     Sex   Age  SibSp  Parch            Ticket     Fare  \\\n",
       "0         0       3    male  22.0      1      0         A/5 21171   7.2500   \n",
       "1         1       1  female  38.0      1      0          PC 17599  71.2833   \n",
       "2         1       3  female  26.0      0      0  STON/O2. 3101282   7.9250   \n",
       "3         1       1  female  35.0      1      0            113803  53.1000   \n",
       "4         0       3    male  35.0      0      0            373450   8.0500   \n",
       "\n",
       "  Embarked  male  Q  S  \n",
       "0        S     1  0  1  \n",
       "1        C     0  0  0  \n",
       "2        S     0  0  1  \n",
       "3        S     0  0  1  \n",
       "4        S     1  0  1  "
      ]
     },
     "execution_count": 58,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Ticket is also not importnt\n",
    "df = df.drop('Ticket',axis=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Survived</th>\n",
       "      <th>Pclass</th>\n",
       "      <th>Sex</th>\n",
       "      <th>Age</th>\n",
       "      <th>SibSp</th>\n",
       "      <th>Parch</th>\n",
       "      <th>Fare</th>\n",
       "      <th>Embarked</th>\n",
       "      <th>male</th>\n",
       "      <th>Q</th>\n",
       "      <th>S</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0</td>\n",
       "      <td>3</td>\n",
       "      <td>male</td>\n",
       "      <td>22.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>7.2500</td>\n",
       "      <td>S</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>female</td>\n",
       "      <td>38.0</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>71.2833</td>\n",
       "      <td>C</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Survived  Pclass     Sex   Age  SibSp  Parch     Fare Embarked  male  Q  S\n",
       "0         0       3    male  22.0      1      0   7.2500        S     1  0  1\n",
       "1         1       1  female  38.0      1      0  71.2833        C     0  0  0"
      ]
     },
     "execution_count": 60,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head(2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Extra Topics (Advanced Python) : Positional & Keyword Args. (* args, **kwargs)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 76,
   "metadata": {},
   "outputs": [],
   "source": [
    "l = [1,2,3]\n",
    "d = {'name':'Dvyas','Age':25}\n",
    "\n",
    "def dets(*args,**kwargs):\n",
    "    \n",
    "    x = args\n",
    "    \n",
    "    y = kwargs\n",
    "    \n",
    "#     print(type(x),type(y))\n",
    "    \n",
    "    print(x, (y))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 77,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(1, 2, 3) {'name': 'Dvyas', 'Age': 25}\n"
     ]
    }
   ],
   "source": [
    "dets(*l,**d)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 78,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(5, 6, 7) {'name': 'divyanshu', 'day': 'Mon'}\n"
     ]
    }
   ],
   "source": [
    "dets(5,6,7,name='divyanshu', day='Mon')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
